"""
@Author : 合肥一元数智教育科技有限公司
@Date :  2025/3/5 15:43
@Description :   写出数据到文件
open('dir01/test.txt','wt',encoding='utf-8')
    mode = 'wt'  以写的形式打开文件
       1.如果文件存在则先清空文件内容在写入新内容
       2.文件不存在则会先创建新文件在写入新内容
"""
#  写出数据
str_info = 'python2511班'
str_info2 = 'hello python2511'
# 打开文件
open_file = open('dir01/test.txt', 'wt', encoding='utf-8')
# 写出数据
open_file.write(str_info)
open_file.write('\n')
open_file.write(str_info2)
open_file.writelines()
# 释放资源
open_file.close()

#  图片  网络  发送http请求     pip  install  requests
'''
import  requests
str_url = 'https://gips2.baidu.com/it/u=308995182,2110671141&fm=3042&app=3042&f=JPEG&wm=1,baiduai,0,0,13,9&wmo=0,0&w=480&h=640'
# 发送http请求 获取网络图片
resp= requests.get(url=str_url)
print(resp)
# 从响应中获取图片信息  content
img_b = resp.content
print(img_b)
# 将网络请求获取的二进制数据写出到baidu.jpg文件中
open_file = open('dir01/baidu.jpg','wb')
open_file.write(img_b)
open_file.close()

'''

'''
# 复制本地图片   baidu.jpg  -> cp_baidu.jpg
# 打开本地图片
src_img_file = open('dir01/baidu.jpg','rb')
src_img_b = src_img_file.read()
# 写出数据
src_img_new_file = open('dir01/cp_baidu.jpg','wb')
src_img_new_file.write(src_img_b)

src_img_file.close()
src_img_new_file.close()

'''
'''
  图片复制操作 问题分析
  1.一次读取所有的数据   如果图片资源比较大 则非常消耗计算机内存
  2.每次都需要手动关闭资源

以上问题  1. 可以通过with 方式打开文件  解决资源释放问题
         2. 在读取数据时指定读取的字节数
'''
with  open('dir01/dir02/baidu.jpg', 'rb') as src:
    with open('dir01/dir02/cp_baidu.jpg', 'wb') as dst:
        # 读取图片字节
        while True:
            src_data = src.read(1024)
            if not src_data:
                break
            else:
                dst.write(src_data)
